package com.shengwei.truck.driver.vm;
import androidx.lifecycle.MutableLiveData;

import com.shengwei.truck.driver.bean.Result;
import com.shengwei.truck.driver.bean.task.JsonTaskListData;
import com.shengwei.truck.driver.bean.task.TaskItem;
import com.shengwei.truck.driver.model.DataSource;
import com.shengwei.truck.driver.model.Repository;

/**
 * 首页底部 任务TAB页"的VM层
 */
public class HomeViewModel extends BaseViewModel {
    private Repository mRepository; //M层引用
    MutableLiveData<Result<JsonTaskListData>> jsonTaskListLiveData = new MutableLiveData<>(); //任务列表
    MutableLiveData<Result<TaskItem>> curTaskLiveData = new MutableLiveData<>(); //当前正在进行的任务
    MutableLiveData<Result<String>> unReadNumLiveData = new MutableLiveData<>(); //当前正在进行的任务


    public MutableLiveData<Result<TaskItem>> getCurTaskLiveData() {
        return curTaskLiveData;
    }

    public MutableLiveData<Result<String>> getUnReadNumLiveData() {
        return unReadNumLiveData;
    }
    public MutableLiveData<Result<JsonTaskListData>> getTaskListLiveData() {
        return jsonTaskListLiveData;
    }
    public HomeViewModel(Repository repository) {
        mRepository = repository;
    }
    public HomeViewModel() {
        mRepository = Repository.getInstance(DataSource.getSingleInstance());
    }

    /**
     * 获取任务列表
     * @param taskStatus： 任务列表状态
     * @param pageNum：   页码
     * @param pageSize：  每页显示条目数
     * @param isForward： 是否是转派列表： 1是已转派列表，否则是0
     * @return
     */
    public void getTaskList(String taskStatus,int pageNum,int pageSize,int isForward) {
        mRepository.getTaskList(taskStatus,pageNum,pageSize,isForward,jsonTaskListLiveData);
    }
    /**
     * 获取当前任务
     */
    public void getCurTask() {
        mRepository.getCurTask(curTaskLiveData);
        return;
    }

    /**
     * 未读消息数
     */
    public void getUnReadNum()
    {
        mRepository.getUnReadNum(unReadNumLiveData);
    }
}